package cn.itcast.listener;


import cn.itcast.common.utils.MailUtil;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageListener;
import org.springframework.amqp.utils.SerializationUtils;

import java.util.Map;

/**
 * 自定义监听器
 */
public class MailListener implements MessageListener {

	/**
	 * 监听到最新的消息执行的方法
	 * @param message ： 消息
	 */
	public void onMessage(Message message) {
		byte[] bytes = message.getBody(); //经过java序列化处理之后的byte数组，反序列化成java对象

		String msg = new String(bytes);

		Map map = (Map)SerializationUtils.deserialize(bytes);

		//添加用户发送邮件
        String to = (String) map.get("to");
        String subject = (String)map.get("subject");
        String content = (String)map.get("content");

        try {
            //发送邮箱
            MailUtil.sendMsg(to,subject,content);
        } catch (Exception e) {
            e.printStackTrace();
        }

        map.forEach(
				(key,value) -> System.out.println(key+"=="+value)
		);
	}
}
